package com.gph.saviorframework;

import com.gph.saviorframework.uc.ExcelParser;
import org.apache.commons.cli.*;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 * Hello world!
 *
 */
public class App 
{
    /**
     * 参数是-f 和 -o
     * -f 表示的是输入的文件
     * -o 表示的是输入的部门编号
     * @param args
     */
    public static void main( String[] args ) throws Exception{
        Options opt = new Options();
        opt.addOption("file", true, "excel file path");
        opt.addOption("oid", true, "org id");

        String formatstr = "params:";

        HelpFormatter formatter = new HelpFormatter();
        CommandLineParser parser = new PosixParser();
        CommandLine cl = null;
        try {
            // 处理Options和参数
            cl = parser.parse( opt, args );
        } catch (ParseException e) {
            formatter.printHelp( formatstr, opt ); // 如果发生异常，则打印出帮助信息
        }
        // 判断是否有-p参数
        if (!cl.hasOption("file")) {
            formatter.printHelp(formatstr, opt); // 如果发生异常，则打印出帮助信息
            return;
        }
        if (!cl.hasOption("oid")) {
            formatter.printHelp(formatstr, opt); // 如果发生异常，则打印出帮助信息
            return;
        }

        //加载consumer.xml
        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("app.xml","consumer.xml");

        //读取参数
        String excelPath = cl.getOptionValue("file");
        String orgId = cl.getOptionValue("oid");

        ExcelParser excelParser = context.getBean(ExcelParser.class);
        excelParser.parseUserExcelFile(excelPath,orgId);
    }
}
